package dbVSguiConnection;


import java.net.URL;
import java.util.ArrayList;




//import java.util.HashMap;

import details.*;

/**
 * @author Tami
 *
 */

public interface GuiGetRerults_Interface {
	
	    /* refreshes or updates the list/result */
		public void updateResultsTableWithCds(ArrayList<Cd> cds);
		public void updateResultsTableWithSongs(ArrayList<Song> songs);
		public void updateResultsTableWithArtists(ArrayList<Artist> artists);
		
		/* as soon as the specific song is chosen we show itsname , artist, comments,lyric, like, views*/
		public void updateSongInfo(Song song);
		
		public void refreshSongLyric(String lyric);
		public void refreshSongComments(ArrayList<Comment> comments);
		public void refreshCdLikes(int cdLikes);
		public void refreshSongLikes(int songLikes);
		public void refreshArtistLikes(int artistLikes);
		
		public void refreshUserLike(Like l);
		
		public void isIfUserLike(boolean isLike);
		
		/* shows on the  cd_name , performer, year , cd_length*/
		public void updateCdInfo(Cd cd);
		public void updateArtistInfo(Artist artist);
		/* shows the list of cd tracks : track_num -> name-> artist-> length*/
		public void updateCdTracks(ArrayList<Track> cdTracks);
		
		public void updateCdCover(URL cdCover);
		
		public void updateArtistCds(ArrayList<Cd> artistCds);
		
		
		
		
		public void updateTopArtist(ArrayList<Artist> topArtists) ;
		public void updateTopSongs(ArrayList<Song> topSongs) ;
		public void updateTopCds(ArrayList<Cd> topCds) ;
		
		
		public void notifyDBFailure(String dbErrormassage);

		public void notifyGeneralError(String generalErrormassage);

		public void notifySuccess();
		
		
		
			
		
		
		/** MORE FUNCTIONS **/
		

}

